import CameraEnum from "../enum/camera_enum";

/**
 * 全局配置
 */
export interface Config {
  /**
   * 音频
   */
  audio?: boolean | AudioConfig;
  /**
   * 视频
   * @default true
   */
  video?: boolean | VideoConfig;
  peerIdentity?: string;
  preferCurrentTab?: boolean;
  /**
   * 默认摄像头
   * @default CameraEnum.front
   * * 该配置优先级高于 video 中的配置
   */
  defaultCamera?: CameraEnum;
  debugMode?: boolean;
}


/**
 * 视频配置
 */
export interface VideoConfig extends MediaTrackConstraintSet {
  advanced?: MediaTrackConstraintSet[];
}

/**
 * 音频配置
 */
 export interface AudioConfig extends MediaTrackConstraintSet {
  advanced?: MediaTrackConstraintSet[];
}